﻿using System;
using System.Runtime.InteropServices;
using System.Text;

namespace Valve.VR
{
	// Token: 0x0200040E RID: 1038
	public struct IVRSystem
	{
		// Token: 0x04000FE8 RID: 4072
		[MarshalAs(UnmanagedType.FunctionPtr)]
		internal IVRSystem._GetRecommendedRenderTargetSize GetRecommendedRenderTargetSize;

		// Token: 0x04000FE9 RID: 4073
		[MarshalAs(UnmanagedType.FunctionPtr)]
		internal IVRSystem._GetProjectionMatrix GetProjectionMatrix;

		// Token: 0x04000FEA RID: 4074
		[MarshalAs(UnmanagedType.FunctionPtr)]
		internal IVRSystem._GetProjectionRaw GetProjectionRaw;

		// Token: 0x04000FEB RID: 4075
		[MarshalAs(UnmanagedType.FunctionPtr)]
		internal IVRSystem._ComputeDistortion ComputeDistortion;

		// Token: 0x04000FEC RID: 4076
		[MarshalAs(UnmanagedType.FunctionPtr)]
		internal IVRSystem._GetEyeToHeadTransform GetEyeToHeadTransform;

		// Token: 0x04000FED RID: 4077
		[MarshalAs(UnmanagedType.FunctionPtr)]
		internal IVRSystem._GetTimeSinceLastVsync GetTimeSinceLastVsync;

		// Token: 0x04000FEE RID: 4078
		[MarshalAs(UnmanagedType.FunctionPtr)]
		internal IVRSystem._GetD3D9AdapterIndex GetD3D9AdapterIndex;

		// Token: 0x04000FEF RID: 4079
		[MarshalAs(UnmanagedType.FunctionPtr)]
		internal IVRSystem._GetDXGIOutputInfo GetDXGIOutputInfo;

		// Token: 0x04000FF0 RID: 4080
		[MarshalAs(UnmanagedType.FunctionPtr)]
		internal IVRSystem._IsDisplayOnDesktop IsDisplayOnDesktop;

		// Token: 0x04000FF1 RID: 4081
		[MarshalAs(UnmanagedType.FunctionPtr)]
		internal IVRSystem._SetDisplayVisibility SetDisplayVisibility;

		// Token: 0x04000FF2 RID: 4082
		[MarshalAs(UnmanagedType.FunctionPtr)]
		internal IVRSystem._GetDeviceToAbsoluteTrackingPose GetDeviceToAbsoluteTrackingPose;

		// Token: 0x04000FF3 RID: 4083
		[MarshalAs(UnmanagedType.FunctionPtr)]
		internal IVRSystem._ResetSeatedZeroPose ResetSeatedZeroPose;

		// Token: 0x04000FF4 RID: 4084
		[MarshalAs(UnmanagedType.FunctionPtr)]
		internal IVRSystem._GetSeatedZeroPoseToStandingAbsoluteTrackingPose GetSeatedZeroPoseToStandingAbsoluteTrackingPose;

		// Token: 0x04000FF5 RID: 4085
		[MarshalAs(UnmanagedType.FunctionPtr)]
		internal IVRSystem._GetRawZeroPoseToStandingAbsoluteTrackingPose GetRawZeroPoseToStandingAbsoluteTrackingPose;

		// Token: 0x04000FF6 RID: 4086
		[MarshalAs(UnmanagedType.FunctionPtr)]
		internal IVRSystem._GetSortedTrackedDeviceIndicesOfClass GetSortedTrackedDeviceIndicesOfClass;

		// Token: 0x04000FF7 RID: 4087
		[MarshalAs(UnmanagedType.FunctionPtr)]
		internal IVRSystem._GetTrackedDeviceActivityLevel GetTrackedDeviceActivityLevel;

		// Token: 0x04000FF8 RID: 4088
		[MarshalAs(UnmanagedType.FunctionPtr)]
		internal IVRSystem._ApplyTransform ApplyTransform;

		// Token: 0x04000FF9 RID: 4089
		[MarshalAs(UnmanagedType.FunctionPtr)]
		internal IVRSystem._GetTrackedDeviceIndexForControllerRole GetTrackedDeviceIndexForControllerRole;

		// Token: 0x04000FFA RID: 4090
		[MarshalAs(UnmanagedType.FunctionPtr)]
		internal IVRSystem._GetControllerRoleForTrackedDeviceIndex GetControllerRoleForTrackedDeviceIndex;

		// Token: 0x04000FFB RID: 4091
		[MarshalAs(UnmanagedType.FunctionPtr)]
		internal IVRSystem._GetTrackedDeviceClass GetTrackedDeviceClass;

		// Token: 0x04000FFC RID: 4092
		[MarshalAs(UnmanagedType.FunctionPtr)]
		internal IVRSystem._IsTrackedDeviceConnected IsTrackedDeviceConnected;

		// Token: 0x04000FFD RID: 4093
		[MarshalAs(UnmanagedType.FunctionPtr)]
		internal IVRSystem._GetBoolTrackedDeviceProperty GetBoolTrackedDeviceProperty;

		// Token: 0x04000FFE RID: 4094
		[MarshalAs(UnmanagedType.FunctionPtr)]
		internal IVRSystem._GetFloatTrackedDeviceProperty GetFloatTrackedDeviceProperty;

		// Token: 0x04000FFF RID: 4095
		[MarshalAs(UnmanagedType.FunctionPtr)]
		internal IVRSystem._GetInt32TrackedDeviceProperty GetInt32TrackedDeviceProperty;

		// Token: 0x04001000 RID: 4096
		[MarshalAs(UnmanagedType.FunctionPtr)]
		internal IVRSystem._GetUint64TrackedDeviceProperty GetUint64TrackedDeviceProperty;

		// Token: 0x04001001 RID: 4097
		[MarshalAs(UnmanagedType.FunctionPtr)]
		internal IVRSystem._GetMatrix34TrackedDeviceProperty GetMatrix34TrackedDeviceProperty;

		// Token: 0x04001002 RID: 4098
		[MarshalAs(UnmanagedType.FunctionPtr)]
		internal IVRSystem._GetStringTrackedDeviceProperty GetStringTrackedDeviceProperty;

		// Token: 0x04001003 RID: 4099
		[MarshalAs(UnmanagedType.FunctionPtr)]
		internal IVRSystem._GetPropErrorNameFromEnum GetPropErrorNameFromEnum;

		// Token: 0x04001004 RID: 4100
		[MarshalAs(UnmanagedType.FunctionPtr)]
		internal IVRSystem._PollNextEvent PollNextEvent;

		// Token: 0x04001005 RID: 4101
		[MarshalAs(UnmanagedType.FunctionPtr)]
		internal IVRSystem._PollNextEventWithPose PollNextEventWithPose;

		// Token: 0x04001006 RID: 4102
		[MarshalAs(UnmanagedType.FunctionPtr)]
		internal IVRSystem._GetEventTypeNameFromEnum GetEventTypeNameFromEnum;

		// Token: 0x04001007 RID: 4103
		[MarshalAs(UnmanagedType.FunctionPtr)]
		internal IVRSystem._GetHiddenAreaMesh GetHiddenAreaMesh;

		// Token: 0x04001008 RID: 4104
		[MarshalAs(UnmanagedType.FunctionPtr)]
		internal IVRSystem._GetControllerState GetControllerState;

		// Token: 0x04001009 RID: 4105
		[MarshalAs(UnmanagedType.FunctionPtr)]
		internal IVRSystem._GetControllerStateWithPose GetControllerStateWithPose;

		// Token: 0x0400100A RID: 4106
		[MarshalAs(UnmanagedType.FunctionPtr)]
		internal IVRSystem._TriggerHapticPulse TriggerHapticPulse;

		// Token: 0x0400100B RID: 4107
		[MarshalAs(UnmanagedType.FunctionPtr)]
		internal IVRSystem._GetButtonIdNameFromEnum GetButtonIdNameFromEnum;

		// Token: 0x0400100C RID: 4108
		[MarshalAs(UnmanagedType.FunctionPtr)]
		internal IVRSystem._GetControllerAxisTypeNameFromEnum GetControllerAxisTypeNameFromEnum;

		// Token: 0x0400100D RID: 4109
		[MarshalAs(UnmanagedType.FunctionPtr)]
		internal IVRSystem._CaptureInputFocus CaptureInputFocus;

		// Token: 0x0400100E RID: 4110
		[MarshalAs(UnmanagedType.FunctionPtr)]
		internal IVRSystem._ReleaseInputFocus ReleaseInputFocus;

		// Token: 0x0400100F RID: 4111
		[MarshalAs(UnmanagedType.FunctionPtr)]
		internal IVRSystem._IsInputFocusCapturedByAnotherProcess IsInputFocusCapturedByAnotherProcess;

		// Token: 0x04001010 RID: 4112
		[MarshalAs(UnmanagedType.FunctionPtr)]
		internal IVRSystem._DriverDebugRequest DriverDebugRequest;

		// Token: 0x04001011 RID: 4113
		[MarshalAs(UnmanagedType.FunctionPtr)]
		internal IVRSystem._PerformFirmwareUpdate PerformFirmwareUpdate;

		// Token: 0x04001012 RID: 4114
		[MarshalAs(UnmanagedType.FunctionPtr)]
		internal IVRSystem._AcknowledgeQuit_Exiting AcknowledgeQuit_Exiting;

		// Token: 0x04001013 RID: 4115
		[MarshalAs(UnmanagedType.FunctionPtr)]
		internal IVRSystem._AcknowledgeQuit_UserPrompt AcknowledgeQuit_UserPrompt;

		// Token: 0x0200040F RID: 1039
		// (Invoke) Token: 0x06001761 RID: 5985
		[UnmanagedFunctionPointer(CallingConvention.StdCall)]
		internal delegate void _GetRecommendedRenderTargetSize(ref uint pnWidth, ref uint pnHeight);

		// Token: 0x02000410 RID: 1040
		// (Invoke) Token: 0x06001765 RID: 5989
		[UnmanagedFunctionPointer(CallingConvention.StdCall)]
		internal delegate HmdMatrix44_t _GetProjectionMatrix(EVREye eEye, float fNearZ, float fFarZ, EGraphicsAPIConvention eProjType);

		// Token: 0x02000411 RID: 1041
		// (Invoke) Token: 0x06001769 RID: 5993
		[UnmanagedFunctionPointer(CallingConvention.StdCall)]
		internal delegate void _GetProjectionRaw(EVREye eEye, ref float pfLeft, ref float pfRight, ref float pfTop, ref float pfBottom);

		// Token: 0x02000412 RID: 1042
		// (Invoke) Token: 0x0600176D RID: 5997
		[UnmanagedFunctionPointer(CallingConvention.StdCall)]
		internal delegate DistortionCoordinates_t _ComputeDistortion(EVREye eEye, float fU, float fV);

		// Token: 0x02000413 RID: 1043
		// (Invoke) Token: 0x06001771 RID: 6001
		[UnmanagedFunctionPointer(CallingConvention.StdCall)]
		internal delegate HmdMatrix34_t _GetEyeToHeadTransform(EVREye eEye);

		// Token: 0x02000414 RID: 1044
		// (Invoke) Token: 0x06001775 RID: 6005
		[UnmanagedFunctionPointer(CallingConvention.StdCall)]
		internal delegate bool _GetTimeSinceLastVsync(ref float pfSecondsSinceLastVsync, ref ulong pulFrameCounter);

		// Token: 0x02000415 RID: 1045
		// (Invoke) Token: 0x06001779 RID: 6009
		[UnmanagedFunctionPointer(CallingConvention.StdCall)]
		internal delegate int _GetD3D9AdapterIndex();

		// Token: 0x02000416 RID: 1046
		// (Invoke) Token: 0x0600177D RID: 6013
		[UnmanagedFunctionPointer(CallingConvention.StdCall)]
		internal delegate void _GetDXGIOutputInfo(ref int pnAdapterIndex);

		// Token: 0x02000417 RID: 1047
		// (Invoke) Token: 0x06001781 RID: 6017
		[UnmanagedFunctionPointer(CallingConvention.StdCall)]
		internal delegate bool _IsDisplayOnDesktop();

		// Token: 0x02000418 RID: 1048
		// (Invoke) Token: 0x06001785 RID: 6021
		[UnmanagedFunctionPointer(CallingConvention.StdCall)]
		internal delegate bool _SetDisplayVisibility(bool bIsVisibleOnDesktop);

		// Token: 0x02000419 RID: 1049
		// (Invoke) Token: 0x06001789 RID: 6025
		[UnmanagedFunctionPointer(CallingConvention.StdCall)]
		internal delegate void _GetDeviceToAbsoluteTrackingPose(ETrackingUniverseOrigin eOrigin, float fPredictedSecondsToPhotonsFromNow, [In] [Out] TrackedDevicePose_t[] pTrackedDevicePoseArray, uint unTrackedDevicePoseArrayCount);

		// Token: 0x0200041A RID: 1050
		// (Invoke) Token: 0x0600178D RID: 6029
		[UnmanagedFunctionPointer(CallingConvention.StdCall)]
		internal delegate void _ResetSeatedZeroPose();

		// Token: 0x0200041B RID: 1051
		// (Invoke) Token: 0x06001791 RID: 6033
		[UnmanagedFunctionPointer(CallingConvention.StdCall)]
		internal delegate HmdMatrix34_t _GetSeatedZeroPoseToStandingAbsoluteTrackingPose();

		// Token: 0x0200041C RID: 1052
		// (Invoke) Token: 0x06001795 RID: 6037
		[UnmanagedFunctionPointer(CallingConvention.StdCall)]
		internal delegate HmdMatrix34_t _GetRawZeroPoseToStandingAbsoluteTrackingPose();

		// Token: 0x0200041D RID: 1053
		// (Invoke) Token: 0x06001799 RID: 6041
		[UnmanagedFunctionPointer(CallingConvention.StdCall)]
		internal delegate uint _GetSortedTrackedDeviceIndicesOfClass(ETrackedDeviceClass eTrackedDeviceClass, [In] [Out] uint[] punTrackedDeviceIndexArray, uint unTrackedDeviceIndexArrayCount, uint unRelativeToTrackedDeviceIndex);

		// Token: 0x0200041E RID: 1054
		// (Invoke) Token: 0x0600179D RID: 6045
		[UnmanagedFunctionPointer(CallingConvention.StdCall)]
		internal delegate EDeviceActivityLevel _GetTrackedDeviceActivityLevel(uint unDeviceId);

		// Token: 0x0200041F RID: 1055
		// (Invoke) Token: 0x060017A1 RID: 6049
		[UnmanagedFunctionPointer(CallingConvention.StdCall)]
		internal delegate void _ApplyTransform(ref TrackedDevicePose_t pOutputPose, ref TrackedDevicePose_t pTrackedDevicePose, ref HmdMatrix34_t pTransform);

		// Token: 0x02000420 RID: 1056
		// (Invoke) Token: 0x060017A5 RID: 6053
		[UnmanagedFunctionPointer(CallingConvention.StdCall)]
		internal delegate uint _GetTrackedDeviceIndexForControllerRole(ETrackedControllerRole unDeviceType);

		// Token: 0x02000421 RID: 1057
		// (Invoke) Token: 0x060017A9 RID: 6057
		[UnmanagedFunctionPointer(CallingConvention.StdCall)]
		internal delegate ETrackedControllerRole _GetControllerRoleForTrackedDeviceIndex(uint unDeviceIndex);

		// Token: 0x02000422 RID: 1058
		// (Invoke) Token: 0x060017AD RID: 6061
		[UnmanagedFunctionPointer(CallingConvention.StdCall)]
		internal delegate ETrackedDeviceClass _GetTrackedDeviceClass(uint unDeviceIndex);

		// Token: 0x02000423 RID: 1059
		// (Invoke) Token: 0x060017B1 RID: 6065
		[UnmanagedFunctionPointer(CallingConvention.StdCall)]
		internal delegate bool _IsTrackedDeviceConnected(uint unDeviceIndex);

		// Token: 0x02000424 RID: 1060
		// (Invoke) Token: 0x060017B5 RID: 6069
		[UnmanagedFunctionPointer(CallingConvention.StdCall)]
		internal delegate bool _GetBoolTrackedDeviceProperty(uint unDeviceIndex, ETrackedDeviceProperty prop, ref ETrackedPropertyError pError);

		// Token: 0x02000425 RID: 1061
		// (Invoke) Token: 0x060017B9 RID: 6073
		[UnmanagedFunctionPointer(CallingConvention.StdCall)]
		internal delegate float _GetFloatTrackedDeviceProperty(uint unDeviceIndex, ETrackedDeviceProperty prop, ref ETrackedPropertyError pError);

		// Token: 0x02000426 RID: 1062
		// (Invoke) Token: 0x060017BD RID: 6077
		[UnmanagedFunctionPointer(CallingConvention.StdCall)]
		internal delegate int _GetInt32TrackedDeviceProperty(uint unDeviceIndex, ETrackedDeviceProperty prop, ref ETrackedPropertyError pError);

		// Token: 0x02000427 RID: 1063
		// (Invoke) Token: 0x060017C1 RID: 6081
		[UnmanagedFunctionPointer(CallingConvention.StdCall)]
		internal delegate ulong _GetUint64TrackedDeviceProperty(uint unDeviceIndex, ETrackedDeviceProperty prop, ref ETrackedPropertyError pError);

		// Token: 0x02000428 RID: 1064
		// (Invoke) Token: 0x060017C5 RID: 6085
		[UnmanagedFunctionPointer(CallingConvention.StdCall)]
		internal delegate HmdMatrix34_t _GetMatrix34TrackedDeviceProperty(uint unDeviceIndex, ETrackedDeviceProperty prop, ref ETrackedPropertyError pError);

		// Token: 0x02000429 RID: 1065
		// (Invoke) Token: 0x060017C9 RID: 6089
		[UnmanagedFunctionPointer(CallingConvention.StdCall)]
		internal delegate uint _GetStringTrackedDeviceProperty(uint unDeviceIndex, ETrackedDeviceProperty prop, StringBuilder pchValue, uint unBufferSize, ref ETrackedPropertyError pError);

		// Token: 0x0200042A RID: 1066
		// (Invoke) Token: 0x060017CD RID: 6093
		[UnmanagedFunctionPointer(CallingConvention.StdCall)]
		internal delegate IntPtr _GetPropErrorNameFromEnum(ETrackedPropertyError error);

		// Token: 0x0200042B RID: 1067
		// (Invoke) Token: 0x060017D1 RID: 6097
		[UnmanagedFunctionPointer(CallingConvention.StdCall)]
		internal delegate bool _PollNextEvent(ref VREvent_t pEvent, uint uncbVREvent);

		// Token: 0x0200042C RID: 1068
		// (Invoke) Token: 0x060017D5 RID: 6101
		[UnmanagedFunctionPointer(CallingConvention.StdCall)]
		internal delegate bool _PollNextEventWithPose(ETrackingUniverseOrigin eOrigin, ref VREvent_t pEvent, uint uncbVREvent, ref TrackedDevicePose_t pTrackedDevicePose);

		// Token: 0x0200042D RID: 1069
		// (Invoke) Token: 0x060017D9 RID: 6105
		[UnmanagedFunctionPointer(CallingConvention.StdCall)]
		internal delegate IntPtr _GetEventTypeNameFromEnum(EVREventType eType);

		// Token: 0x0200042E RID: 1070
		// (Invoke) Token: 0x060017DD RID: 6109
		[UnmanagedFunctionPointer(CallingConvention.StdCall)]
		internal delegate HiddenAreaMesh_t _GetHiddenAreaMesh(EVREye eEye);

		// Token: 0x0200042F RID: 1071
		// (Invoke) Token: 0x060017E1 RID: 6113
		[UnmanagedFunctionPointer(CallingConvention.StdCall)]
		internal delegate bool _GetControllerState(uint unControllerDeviceIndex, ref VRControllerState_t pControllerState);

		// Token: 0x02000430 RID: 1072
		// (Invoke) Token: 0x060017E5 RID: 6117
		[UnmanagedFunctionPointer(CallingConvention.StdCall)]
		internal delegate bool _GetControllerStateWithPose(ETrackingUniverseOrigin eOrigin, uint unControllerDeviceIndex, ref VRControllerState_t pControllerState, ref TrackedDevicePose_t pTrackedDevicePose);

		// Token: 0x02000431 RID: 1073
		// (Invoke) Token: 0x060017E9 RID: 6121
		[UnmanagedFunctionPointer(CallingConvention.StdCall)]
		internal delegate void _TriggerHapticPulse(uint unControllerDeviceIndex, uint unAxisId, char usDurationMicroSec);

		// Token: 0x02000432 RID: 1074
		// (Invoke) Token: 0x060017ED RID: 6125
		[UnmanagedFunctionPointer(CallingConvention.StdCall)]
		internal delegate IntPtr _GetButtonIdNameFromEnum(EVRButtonId eButtonId);

		// Token: 0x02000433 RID: 1075
		// (Invoke) Token: 0x060017F1 RID: 6129
		[UnmanagedFunctionPointer(CallingConvention.StdCall)]
		internal delegate IntPtr _GetControllerAxisTypeNameFromEnum(EVRControllerAxisType eAxisType);

		// Token: 0x02000434 RID: 1076
		// (Invoke) Token: 0x060017F5 RID: 6133
		[UnmanagedFunctionPointer(CallingConvention.StdCall)]
		internal delegate bool _CaptureInputFocus();

		// Token: 0x02000435 RID: 1077
		// (Invoke) Token: 0x060017F9 RID: 6137
		[UnmanagedFunctionPointer(CallingConvention.StdCall)]
		internal delegate void _ReleaseInputFocus();

		// Token: 0x02000436 RID: 1078
		// (Invoke) Token: 0x060017FD RID: 6141
		[UnmanagedFunctionPointer(CallingConvention.StdCall)]
		internal delegate bool _IsInputFocusCapturedByAnotherProcess();

		// Token: 0x02000437 RID: 1079
		// (Invoke) Token: 0x06001801 RID: 6145
		[UnmanagedFunctionPointer(CallingConvention.StdCall)]
		internal delegate uint _DriverDebugRequest(uint unDeviceIndex, string pchRequest, string pchResponseBuffer, uint unResponseBufferSize);

		// Token: 0x02000438 RID: 1080
		// (Invoke) Token: 0x06001805 RID: 6149
		[UnmanagedFunctionPointer(CallingConvention.StdCall)]
		internal delegate EVRFirmwareError _PerformFirmwareUpdate(uint unDeviceIndex);

		// Token: 0x02000439 RID: 1081
		// (Invoke) Token: 0x06001809 RID: 6153
		[UnmanagedFunctionPointer(CallingConvention.StdCall)]
		internal delegate void _AcknowledgeQuit_Exiting();

		// Token: 0x0200043A RID: 1082
		// (Invoke) Token: 0x0600180D RID: 6157
		[UnmanagedFunctionPointer(CallingConvention.StdCall)]
		internal delegate void _AcknowledgeQuit_UserPrompt();
	}
}
